世界空间纹理(In-world Textures)
最快方案是使用 Rive RenderTarget 资产,并直接拖入关卡。
Unreal 会自动:
- 生成场景 Actor
- 创建采样该 RenderTarget 的材质
- 把材质赋给网格
适用场景:
- 场景内屏幕
- 终端/仪表盘
- TV 面板等
本页针对世界空间纹理;若是 HUD/菜单等屏幕 UI,请使用
URiveWidget。
1)创建 Rive RenderTarget
- 在 Rive file 资产上右键
- 选择 Create Rive Render Target
- 双击打开后配置:Rive File / Artboard /(可选)State Machine / 分辨率
建议先从 512x512 开始,按近景清晰度再上调。
2)拖入关卡
把 RenderTarget 从 Content Browser 拖到 viewport,即可自动应用到网格。
3)更新机制(Tick + Draw)
RenderTarget 只有在 Runtime 被推进并绘制时才会更新。
因此场景中必须有驱动者负责:
- Tick(推进)
- Draw(输出到 RenderTarget)
推荐使用 RiveRenderTargetUpdater。
4)使用 RiveRenderTargetUpdater
典型做法:
- 新建 Actor Blueprint(如
BP_RiveRenderDriver) - 添加
RiveRenderTargetUpdater组件 - 指向目标 RenderTarget
- 按场景需要设置分辨率
5)交互
若内容可交互(状态机 + ViewModel):
- 绑定 ViewModel
- 写入属性值
- 触发 Trigger
下一次 tick/draw 后,纹理即可反映变化。